18 research outputs found

    Supervised Software Modularisation

    Full text link
    This paper is concerned with the challenge of reorganising a software system into modules that both obey sound design principles and are sensible to domain experts. The problem has given rise to several unsupervised automated approaches that use techniques such as clustering and Formal Concept Analysis. Although results are often partially correct, they usually require refinement to enable the developer to integrate domain knowledge. This paper presents the SUMO algorithm, an approach that is complementary to existing techniques and enables the maintainer to refine their results. The algorithm is guaranteed to eventually yield a result that is satisfactory to the maintainer, and the evaluation on a diverse range of systems shows that this occurs with a reasonably low amount of effort

    Using Compression Algorithms to Support the Comprehension of Program Traces

    Full text link
    Several software maintenance tasks such as debugging, phase-identification, or simply the high-level exploration of system functionality, rely on the extensive analysis of program traces. These usually require the developer to manually discern any repeated patterns that may be of interest from some visual representation of the trace. This can be both time-consuming and inaccurate; there is always the danger that visually similar trace-patterns actually represent distinct program behaviours. This paper presents an automated phase-identification technique. It is founded on the observation that the challenge of identifying repeated patterns in a trace is analogous to the challenge faced by data-compression algorithms. This applies an established data compression algorithm to identify repeated phases in traces. The SEQUITUR compression algorithm not only compresses data, but organises the repeated patterns into a hierarchy, which is especially useful from a comprehension standpoint, because it enables the analysis of a trace at varying levels of abstraction

    Effective and Efficient Use of Expert Knowledge in Automated Software Remodularisation

    Full text link
    Abstract: Remodularising the components of a software system is challenging: sound design principles (e.g., coupling and cohesion) need to be balanced against developer intuition of which entities conceptually belong together. Despite this, automated approaches to remodularisation tend to ignore domain knowledge, leading to results that can be nonsensical to developers. Nevertheless, suppling such knowledge is a potentially burdensome task to perform manually. A lot information may need to be specified, particularly for large systems. Addressing these concerns, we propose the SUMO (SUpervised reMOdularisation) approach. SUMO is a technique that aims to leverage a small subset of domain knowledge about a system to produce a remodularisation that will be acceptable to a developer. With SUMO, developers refine a modularisation by iteratively supplying corrections. These corrections constrain the type of remodularisation eventually required, enabling SUMO to dramatically reduce the solution space. This in turn reduces the amount of feedback the developer needs to supply. We perform a comprehensive systematic evaluation using 100 real world subject systems. Our results show that SUMO guarantees convergence on a target remodularisation with a tractable amount of user interaction

    <i>In vitro</i> co-cultures and the corresponding simulations of keratinocytes and fibroblasts.

    No full text
    <p>(A) and (C) show micrographs of normal human keratinocytes (NHKs) and human dermal fibroblasts (HDFs) co-cultured for 8 days in Greens medium with and without foetal calf serum (FCS) respectively, while (B) and (D) show the corresponding model simulations. For modelling purposes the initial numbers of keratinocyte stem cells and fibroblasts were both defined as 10 within the user-defined flat square surface (500 µm×500 µm). In the agent based model different colours were used to represent keratinocyte stem cells (blue), TA cells (light green), committed cells (dark green), corneocytes (brown), proliferative fibroblasts (pink) and differentiated fibroblasts (red). Bar = 100 µm.</p

    <i>In vitro</i> and <i>in virtuo</i> analysis of the supplement of dermal fibroblasts when cocultured with keratinocytes.

    No full text
    <p>(A) Effect of the addition of human dermal fibroblasts (HDFs) at different time points (iterations in the model) on keratinocyte proliferation. The initial numbers of keratinocyte stem cell and fibroblast were both defined as 10 within the user-defined flat square surface (500 µm×500 µm), while 50 extra fibroblasts were added for each simulation at different simulation time (iterations). Simulation results shown are mean±SD (n = 10). Effect of the addition of extra HDFs at different culture time periods on (B) the percentage of the tissue culture well occupied by NHK colonies after culture for 7 days and (C) the expression of pan-cytokeratin in NHKs (assessed as an indirect indicator of keratinocyte mass )after culture for 12 days. Results shown are mean±SD (n = 3).</p

    <i>In vitro</i> monocultures and the corresponding simulations of keratinocytes and fibroblasts.

    No full text
    <p><i>In virtuo</i> simulations of the growth of normal human keratinocytes (NHKs) and human dermal fibroblasts (HDFs) in monocultures in the presence and absence of foetal calf serum (FCS). (A) and (C) show micrographs of NHKs single cultured for 8 days in Greens medium with and without FCS respectively, while (B) and (D) show the corresponding model simulations. (E) and (G) show micrographs of HDFs single cultured for 8 days in Greens media with or lacking FCS, while (F) and (H) show the corresponding <i>in virtuo</i> simulation. The initial numbers of keratinocyte stem cells and fibroblasts were both defined as 10 within the user-defined flat surface (500 µm×500 µm). In the agent based model different colours were used to represent keratinocyte stem cells (blue), TA cells (light green), committed cells (dark green), corneocytes (brown), proliferative fibroblasts (pink) and differentiated fibroblasts (red). Bar = 100 µm.</p

    <i>In vitro</i> analysis of the supplement of extra irradiated mouse fibroblasts when cocultured with keratinocytes.

    No full text
    <p>(A-D) Micrographs of normal human keratinocytes (NHK) co-cultured with irradiated mouse fibroblasts (i3T3) in serum free Greens medium when extra i3T3s were not supplemented (NS) during the culture, supplemented at day 1(A), 2 (B), 3 (C) or 4 (D) respectively and cultured for 12 days. Bar = 100 µm. Effect of the addition of extra i3T3s at different culture time periods on (E) the percentage of the tissue culture well occupied by NHK colonies after culture for 7 days and (F) the expression of pan-cytokeratin in NHKs (assessed as an indirect indicator of keratinocyte mass)after culture for 12 days. Results shown are mean±SD (n = 3).</p

    Summary of biological rules used to govern agent behaviours in the NHK colony formation model.

    No full text
    <p><b>Notes</b>: EX: explicitly modeled rules, IM: implicitly modeled rules. TA cells: transit amplifying cells, ECM: extracellular matrix.</p

    Summary of biological rules used to govern agent behaviours in the NHK/HDF co-culture model.

    No full text
    <p><b>Notes</b>: EX: explicitly modeled rules, IM: implicitly modeled rules. TA cells: transit amplifying cells, P-HDF: proliferative human dermal fibroblast. D-HDF: differentiated human dermal fibroblast, ECM: extracellular matrix.</p

    Comparison of the ability of proliferative versus growth arrested fibroblasts to support keratinocyte colony growth in the absence of fetal calf serum.

    No full text
    <p>Comparison of the ability of proliferative versus growth arrested fibroblasts to support keratinocyte colony growth in the absence of fetal calf serum.</p
    corecore